This document shows plots and time-frequency analyses related to feedback error processing and movement preparation for different perturbation types: fixed rotation, mirror reversal, random rotation.
source('ana/shared.R')
source('ana/permutationTtest.R')
We transform the signals across epochs into time-frequency representations (TFRs) using Morlet wavelet (6 cycles) convolution. The frequencies we include are log-spaced values that range from 6 to 35 Hz. First, we show plots time-locked to feedback onset. We include 250 ms before the feedback onset, to show TFRs around the movement onset, given that we observed some ERPs during these timepoints. However, we shift our focus to analyzing the second that follows feedback onset.
To focus better on differences between early and late training within each perturbation type, we only analyze the first two blocks of trials during early training (first 12 training trials) and the last two blocks of trials during late training (last 12 training trials). We then generate TFRs for each of the conditions (early vs. late for fixed rotation, mirror reversal, random rotation), and calculate TFRs for the baseline aligned reaches. We focused on two different regions of interest (ROIs): the medial frontal areas (F1, Fz, F2, FC1, FCz, FC2, C1, Cz, C2) and lateral central areas of the left hemisphere (i.e., opposite the moving hand; C5, C3, CP5, CP3, CP1, P5, P3, P1)
For each ROI, we calculate the mean power (µV²) within each participant of the following frequency bands: theta (6-8 Hz), alpha (9-13 Hz), and beta (13-25 Hz). We then compare these mean frequencies between early and late training for the different perturbation types.
First, we compare each early or late condition to the aligned baseline condition. For statistical analyses, we implemented a cluster-based permutation t-test. Clusters of time points that exceed the t-value threshold (determined by a t-distribution, given a p-value of 0.05 and sample size of 32) will be shown in light orange or red colors, while clusters of time points that significantly differ from chance after 1000 permutations will be shown in dark orange or red colors.
plotPermTestEarlyLateTFRs(freqs = 'theta', roi = 'medfro')
plotPermTestEarlyLateTFRs(freqs = 'theta', roi = 'latcen')
For the medial frontal areas, we observe significant clusters for the early random and mirror conditions around 250ms post-feedback onset. This is less evident for late random and mirror conditions. We do not find significant clusters for both rotation conditions.
For the lateral central areas, we find the same pattern of results, where the first 250 ms post-feedback onset show significant clusters when compared to aligned reaches, but there are no significant clusters for the fixed rotation condition.
plotPermTestEarlyLateTFRs(freqs = 'alpha', roi = 'medfro')
plotPermTestEarlyLateTFRs(freqs = 'alpha', roi = 'latcen')
Note that we only consider time points from feedback onset until 1 second post-feedback.
For the medial frontal areas, we do not observe any clusters for the early and late fixed rotation during the time points we consider. Although the early fixed rotation condition showed a significant cluster, this may likely be due to movements performed on the way back to the start position. We observe a significant cluster between 0.5 sec to 1.0 sec during early training in the random rotation condition, which is not observed during late training. Finally, we observe clusters for both early and late mirror training, suggesting that mirror training produced a decrease in alpha power compared to the aligned condition. However, none reached statistical significance.
For the lateral central areas, we find significant clusters only during early and late mirror training, where the decrease in alpha power seems to occur earlier on (around movement onset) during late training.
plotPermTestEarlyLateTFRs(freqs = 'beta', roi = 'medfro')
plotPermTestEarlyLateTFRs(freqs = 'beta', roi = 'latcen')
For the medial frontal areas, we observe significant clusters during early training with the random rotation (around 250 ms to 800 ms) but not during late training. We also observe significant clusters during early and late mirror training.
For the lateral central areas, we find significant clusters only during early training with the random rotation, just prior to 500 ms after feedback onset.
Next, we subtract the aligned condition from each early and late condition, across the different perturbation types. Statistical analyses will still be based from the cluster-based permutation tests conducted on these difference waves
plotPermTestEarlyLateDiffWavesTFRs(freqs = 'theta', roi = 'medfro')
plotPermTestEarlyLateDiffWavesTFRs(freqs = 'theta', roi = 'latcen')
For the medial frontal areas, although we observe some clusters for the fixed and random rotation conditions, none of these are significant.
For the lateral central areas, we observe a similar pattern of results, where we do not find any significant clusters when comparing early and late training.
plotPermTestEarlyLateDiffWavesTFRs(freqs = 'alpha', roi = 'medfro')
plotPermTestEarlyLateDiffWavesTFRs(freqs = 'alpha', roi = 'latcen')
For the medial frontal areas, we do not find any significant clusters.
For the lateral central areas, we observe some clusters areound feedback onset for mirror training, but none are significant.
plotPermTestEarlyLateDiffWavesTFRs(freqs = 'beta', roi = 'medfro')
plotPermTestEarlyLateDiffWavesTFRs(freqs = 'beta', roi = 'latcen')
For the medial frontal areas, we only find significant clusters for random rotation training, with late training having increased beta power for almost the full second post-feedback.
For the lateral central areas, we observe some clusters for each perturbation, but none are significant.
Next, we subtract the early from the late condition, across the different perturbation types. Then, we compare each perturbation type with the other two. Statistical analyses will still be based from the cluster-based permutation tests conducted on these difference waves.
plotPermTestPTypeEarlyLateDiffWavesTFRs(freqs = 'theta', roi = 'medfro')
plotPermTestPTypeEarlyLateDiffWavesTFRs(freqs = 'theta', roi = 'latcen')
We do not observe any significant clusters for both regions of interest.
plotPermTestPTypeEarlyLateDiffWavesTFRs(freqs = 'alpha', roi = 'medfro')
plotPermTestPTypeEarlyLateDiffWavesTFRs(freqs = 'alpha', roi = 'latcen')
We do not observe any significant clusters for both regions of interest.
plotPermTestPTypeEarlyLateDiffWavesTFRs(freqs = 'beta', roi = 'medfro')
plotPermTestPTypeEarlyLateDiffWavesTFRs(freqs = 'beta', roi = 'latcen')
We observe a significant cluster when comparing mirror and random perturbations, around 250 ms post-feedback.
We then identify trials where participants either committed small or large errors. We defined small errors as the lowest 40% of error magnitudes across all perturbed trials, while large errors were the highest 40%. We then generate TFRs for each of the conditions (small vs. large for fixed rotation, mirror reversal, random rotation), and calculate TFRs for the baseline aligned reaches. We focused on two different regions of interest (ROIs): the medial frontal areas (F1, Fz, F2, FC1, FCz, FC2, C1, Cz, C2) and lateral central areas of the left hemisphere (i.e., opposite the moving hand; C5, C3, CP5, CP3, CP1, P5, P3, P1)
For each ROI, we calculate the mean power (µV²) within each participant of the following frequency bands: theta (6-8 Hz), alpha (9-13 Hz), and beta (13-25 Hz). We then compare these mean frequencies between small and large error conditions for the different perturbation types.
First, we compare each small or large condition to the aligned baseline condition. For statistical analyses, we implemented a cluster-based permutation t-test. Clusters of time points that exceed the t-value threshold (determined by a t-distribution, given a p-value of 0.05 and sample size of 32) will be shown in light orange or red colors, while clusters of time points that significantly differ from chance after 1000 permutations will be shown in dark orange or red colors.
plotPermTestSmallLargeTFRs(freqs = 'theta', roi = 'medfro')
plotPermTestSmallLargeTFRs(freqs = 'theta', roi = 'latcen')
For the medial frontal areas, we find significant clusters for the large random rotation, as well as small and large mirror conditions. Theta power was increased around the time after feedback onset and lasted until around 500 ms post-feedback. Theta power was increased until after more than 500 ms post-feedback for large errors in the mirror condition.
For the lateral central areas, although we observe significant clusters in the other conditions, these clusters occur near 1 sec post-feedback, which could be related to moving back to the home position. Thus, we only consider the large error condition during mirror training to have a significant cluster around feedback onset up to after more than 500 ms post-feedback.
plotPermTestSmallLargeTFRs(freqs = 'alpha', roi = 'medfro')
plotPermTestSmallLargeTFRs(freqs = 'alpha', roi = 'latcen')
For the medial frontal areas, we find significant clusters for the large fixed rotation, occurring around movement onset until around 350 ms post-feedback. We also find a significant cluster for the small random rotation, which seems to be generally lower compared to aligned from around after 250 ms post-feedback, until the end of the trial.
For the lateral central areas, we observe significant clusters during large fixed rotation, small random rotation, and small mirror conditions.
plotPermTestSmallLargeTFRs(freqs = 'beta', roi = 'medfro')
plotPermTestSmallLargeTFRs(freqs = 'beta', roi = 'latcen')
For medial frontal areas, we observe lower beta power post-feedback for only the small mirror condition.
For the lateral central areas, we do not find any significant clusters.
Next, we subtract the aligned condition from each small and large condition, across the different perturbation types. Statistical analyses will still be based from the cluster-based permutation tests conducted on these difference waves
plotPermTestSmallLargeDiffWavesTFRs(freqs = 'theta', roi = 'medfro')
plotPermTestSmallLargeDiffWavesTFRs(freqs = 'theta', roi = 'latcen')
For both regions of interest, we do not find any significant clusters.
plotPermTestSmallLargeDiffWavesTFRs(freqs = 'alpha', roi = 'medfro')
plotPermTestSmallLargeDiffWavesTFRs(freqs = 'alpha', roi = 'latcen')
For both regions of interest, we do not find any significant clusters.
plotPermTestSmallLargeDiffWavesTFRs(freqs = 'beta', roi = 'medfro')
plotPermTestSmallLargeDiffWavesTFRs(freqs = 'beta', roi = 'latcen')
We only find a significant cluster for the lateral central ROI, during random rotation training. This occurs around movement onset until a few ms post-feedback, where beta power is decreased for large errors compared to small errors.
Next, we subtract the small from the large error conditions, across the different perturbation types. Then, we compare each perturbation type with the other two. Statistical analyses will still be based from the cluster-based permutation tests conducted on these difference waves.
plotPermTestPTypeSmallLargeDiffWavesTFRs(freqs = 'theta', roi = 'medfro')
plotPermTestPTypeSmallLargeDiffWavesTFRs(freqs = 'theta', roi = 'latcen')
We do not find any significant clusters.
plotPermTestPTypeSmallLargeDiffWavesTFRs(freqs = 'alpha', roi = 'medfro')
plotPermTestPTypeSmallLargeDiffWavesTFRs(freqs = 'alpha', roi = 'latcen')
We do not find any significant clusters.
plotPermTestPTypeSmallLargeDiffWavesTFRs(freqs = 'beta', roi = 'medfro')
plotPermTestPTypeSmallLargeDiffWavesTFRs(freqs = 'beta', roi = 'latcen')
We find a significant cluster when comparing mirror and random perturbation types.
Next, we show TFR plots time-locked to the go signal onset. We include time points from -1.5 sec to zero, but focus our analyses on the second prior to the go signal. That is, once the target is cued until they are allowed to move towards the target.
We split the data into the different conditions, in a similar manner as above.
For each ROI, we calculate the mean power (µV²) within each participant of the following frequency bands: theta (6-8 Hz), alpha (9-13 Hz), and beta (13-25 Hz). We then compare these mean frequencies between early and late training for the different perturbation types.
First, we compare each early or late condition to the aligned baseline condition. For statistical analyses, we implemented a cluster-based permutation t-test. Clusters of time points that exceed the t-value threshold (determined by a t-distribution, given a p-value of 0.05 and sample size of 32) will be shown in light orange or red colors, while clusters of time points that significantly differ from chance after 1000 permutations will be shown in dark orange or red colors.
plotGoOnsetPermTestEarlyLateTFRs(freqs = 'theta', roi = 'medfro')
plotGoOnsetPermTestEarlyLateTFRs(freqs = 'theta', roi = 'latcen')
We only find a significant cluster for the lateral central area during late random rotation training.
plotGoOnsetPermTestEarlyLateTFRs(freqs = 'alpha', roi = 'medfro')
plotGoOnsetPermTestEarlyLateTFRs(freqs = 'alpha', roi = 'latcen')
For the medial frontal area, we find higher alpha power prior to the go signal onset during early random rotation training. We also find lower alpha power just before the go signal onset during late mirror training.
For the lateral central area, we do not find any significant clusters.
plotGoOnsetPermTestEarlyLateTFRs(freqs = 'beta', roi = 'medfro')
plotGoOnsetPermTestEarlyLateTFRs(freqs = 'beta', roi = 'latcen')
For the medial frontal region, we find lower beta power during both early fixed rotation training and late random rotation training, prior to the go signal. Clusters were identified for both early and late mirror training, but these were not significant.
We do not observe significant clusters for the lateral central area.
Next, we subtract the aligned condition from each early and late condition, across the different perturbation types. Statistical analyses will still be based from the cluster-based permutation tests conducted on these difference waves
plotGoOnsetPermTestEarlyLateDiffWavesTFRs(freqs = 'theta', roi = 'medfro')
plotGoOnsetPermTestEarlyLateDiffWavesTFRs(freqs = 'theta', roi = 'latcen')
We do not find significant clusters.
plotGoOnsetPermTestEarlyLateDiffWavesTFRs(freqs = 'alpha', roi = 'medfro')
plotGoOnsetPermTestEarlyLateDiffWavesTFRs(freqs = 'alpha', roi = 'latcen')
We only find a significant cluster in the medial frontal area, when comparing early and late random rotation training. Alpha was decreased later on in training for the random condition.
plotGoOnsetPermTestEarlyLateDiffWavesTFRs(freqs = 'beta', roi = 'medfro')
plotGoOnsetPermTestEarlyLateDiffWavesTFRs(freqs = 'beta', roi = 'latcen')
We do not find significant clusters.
Next, we subtract the early from the late condition, across the different perturbation types. Then, we compare each perturbation type with the other two. Statistical analyses will still be based from the cluster-based permutation tests conducted on these difference waves.
plotGoOnsetPermTestPTypeEarlyLateDiffWavesTFRs(freqs = 'theta', roi = 'medfro')
plotGoOnsetPermTestPTypeEarlyLateDiffWavesTFRs(freqs = 'theta', roi = 'latcen')
We do not observe any significant clusters for both regions of interest.
plotGoOnsetPermTestPTypeEarlyLateDiffWavesTFRs(freqs = 'alpha', roi = 'medfro')
plotGoOnsetPermTestPTypeEarlyLateDiffWavesTFRs(freqs = 'alpha', roi = 'latcen')
We do not observe any significant clusters for both regions of interest.
plotGoOnsetPermTestPTypeEarlyLateDiffWavesTFRs(freqs = 'beta', roi = 'medfro')
plotGoOnsetPermTestPTypeEarlyLateDiffWavesTFRs(freqs = 'beta', roi = 'latcen')
We do not observe any significant clusters for both regions of interest.
We then identify trials where participants either committed small or large errors. We defined small errors as the lowest 40% of error magnitudes across all perturbed trials, while large errors were the highest 40%. We then generate TFRs for each of the conditions (small vs. large for fixed rotation, mirror reversal, random rotation), and calculate TFRs for the baseline aligned reaches. We focused on two different regions of interest (ROIs): the medial frontal areas (F1, Fz, F2, FC1, FCz, FC2, C1, Cz, C2) and lateral central areas of the left hemisphere (i.e., opposite the moving hand; C5, C3, CP5, CP3, CP1, P5, P3, P1)
For each ROI, we calculate the mean power (µV²) within each participant of the following frequency bands: theta (6-8 Hz), alpha (9-13 Hz), and beta (13-25 Hz). We then compare these mean frequencies between small and large error conditions for the different perturbation types.
First, we compare each small or large condition to the aligned baseline condition. For statistical analyses, we implemented a cluster-based permutation t-test. Clusters of time points that exceed the t-value threshold (determined by a t-distribution, given a p-value of 0.05 and sample size of 32) will be shown in light orange or red colors, while clusters of time points that significantly differ from chance after 1000 permutations will be shown in dark orange or red colors.
plotGoOnsetPermTestSmallLargeTFRs(freqs = 'theta', roi = 'medfro')
plotGoOnsetPermTestSmallLargeTFRs(freqs = 'theta', roi = 'latcen')
We do not find any significant clusters.
plotGoOnsetPermTestSmallLargeTFRs(freqs = 'alpha', roi = 'medfro')
plotGoOnsetPermTestSmallLargeTFRs(freqs = 'alpha', roi = 'latcen')
For the medial frontal areas, we find significant clusters for the small and large mirror conditions.
For the lateral central areas, we observe significant clusters during small random rotation, and large mirror conditions.
plotGoOnsetPermTestSmallLargeTFRs(freqs = 'beta', roi = 'medfro')
plotGoOnsetPermTestSmallLargeTFRs(freqs = 'beta', roi = 'latcen')
For medial frontal areas, we observe significant clusters for the large rotation condition, occurring a few ms after target onset. We also observe significant clusters for small random and small mirror conditions, just prior to go signal onset.
For the lateral central areas, we find significant clusters for small random and small mirror conditions.
Next, we subtract the aligned condition from each small and large condition, across the different perturbation types. Statistical analyses will still be based from the cluster-based permutation tests conducted on these difference waves
plotGoOnsetPermTestSmallLargeDiffWavesTFRs(freqs = 'theta', roi = 'medfro')
plotGoOnsetPermTestSmallLargeDiffWavesTFRs(freqs = 'theta', roi = 'latcen')
For both regions of interest, we do not find any significant clusters.
plotGoOnsetPermTestSmallLargeDiffWavesTFRs(freqs = 'alpha', roi = 'medfro')
plotGoOnsetPermTestSmallLargeDiffWavesTFRs(freqs = 'alpha', roi = 'latcen')
We find a significant cluster for random condition in lateral central areas.
plotGoOnsetPermTestSmallLargeDiffWavesTFRs(freqs = 'beta', roi = 'medfro')
plotGoOnsetPermTestSmallLargeDiffWavesTFRs(freqs = 'beta', roi = 'latcen')
We do not find significant clusters for both regions of interest.
Next, we subtract the small from the large error conditions, across the different perturbation types. Then, we compare each perturbation type with the other two. Statistical analyses will still be based from the cluster-based permutation tests conducted on these difference waves.
plotGoOnsetPermTestPTypeSmallLargeDiffWavesTFRs(freqs = 'theta', roi = 'medfro')
plotGoOnsetPermTestPTypeSmallLargeDiffWavesTFRs(freqs = 'theta', roi = 'latcen')
We do not find any significant clusters.
plotGoOnsetPermTestPTypeSmallLargeDiffWavesTFRs(freqs = 'alpha', roi = 'medfro')
plotGoOnsetPermTestPTypeSmallLargeDiffWavesTFRs(freqs = 'alpha', roi = 'latcen')
For the lateral central area, we find a difference between mirror and random perturbation, where mirror alpha power is decreased compared to random, just prior to the go signal onset.
plotGoOnsetPermTestPTypeSmallLargeDiffWavesTFRs(freqs = 'beta', roi = 'medfro')
plotGoOnsetPermTestPTypeSmallLargeDiffWavesTFRs(freqs = 'beta', roi = 'latcen')
For the lateral central area, we find a significant cluster when comparing mirror and fixed rotation, occurring just after target onset. Beta power for the fixed rotation is lower compared to mirror.